package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目概况对象 sys_project_overview
 *
 * @author ruoyi
 * @date 2022-01-14
 */
public class SysProjectOverview extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**  */
    @TableId(type = IdType.AUTO)
    @JSONField(serialize = false)
    private Integer id;

    /** 建设单位 */
    @Excel(name = "建设单位")
    private String constrctionUnit;

    /** 监理单位 */
    @Excel(name = "监理单位")
    private String supervisoryUnit;

    /** 设计单位 */
    @Excel(name = "设计单位")
    private String designUnit;

    /** 智慧工地ZH1标段 */
    @Excel(name = "智慧工地ZH1标段")
    private String zh1Section;

    /** 智慧工地ZH2标段 */
    @Excel(name = "智慧工地ZH2标段")
    private String zh2Section;

    /** 项目完成占比 */
    @Excel(name = "项目完成占比")
    private String completionRatio;

    /** 项目开工日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "项目开工日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    /** 项目工程结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "项目工程结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;
    /** 完成比 */
    private  List<BigDecimal> completionRatioList;

    public String getNow() {
        return now;
    }

    public void setNow(String now) {
        this.now = now;
    }

    /** 系统当前时间 */
    private String now;

    public void setId(Integer id)
    {
        this.id = id;
    }

    public Integer getId()
    {
        return id;
    }
    public void setConstrctionUnit(String constrctionUnit)
    {
        this.constrctionUnit = constrctionUnit;
    }

    public String getConstrctionUnit()
    {
        return constrctionUnit;
    }
    public void setSupervisoryUnit(String supervisoryUnit)
    {
        this.supervisoryUnit = supervisoryUnit;
    }

    public String getSupervisoryUnit()
    {
        return supervisoryUnit;
    }
    public void setDesignUnit(String designUnit)
    {
        this.designUnit = designUnit;
    }

    public String getDesignUnit()
    {
        return designUnit;
    }
    public void setZh1Section(String zh1Section)
    {
        this.zh1Section = zh1Section;
    }

    public String getZh1Section()
    {
        return zh1Section;
    }
    public void setZh2Section(String zh2Section)
    {
        this.zh2Section = zh2Section;
    }

    public String getZh2Section()
    {
        return zh2Section;
    }
    public void setCompletionRatio(String completionRatio)
    {
        this.completionRatio = completionRatio;
    }

    public String getCompletionRatio()
    {
        return completionRatio;
    }
    public void setStartDate(Date startDate)
    {
        this.startDate = startDate;
    }

    public Date getStartDate()
    {
        return startDate;
    }
    public void setEndDate(Date endDate)
    {
        this.endDate = endDate;
    }

    public Date getEndDate()
    {
        return endDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("constrctionUnit", getConstrctionUnit())
            .append("supervisoryUnit", getSupervisoryUnit())
            .append("designUnit", getDesignUnit())
            .append("zh1Section", getZh1Section())
            .append("zh2Section", getZh2Section())
            .append("completionRatio", getCompletionRatio())
            .append("startDate", getStartDate())
            .append("endDate", getEndDate())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }

    public List<BigDecimal> getCompletionRatioList() {
        return completionRatioList;
    }

    public void setCompletionRatioList(List<BigDecimal> completionRatioList) {
        this.completionRatioList = completionRatioList;
    }
}
